FIG. 1 is a block diagram for explaining a conventional access control, and FIG. 2 is a diagram for explaining problems of the conventional access control.
In a computer system illustrated in FIG. 1, two clusters 1-0 and 1-1 (CL0 and CL1) share a single System Storage Unit (SSU) 2. Each of the clusters CL0 and CL1 has a processor, such as a Central Processing Unit (CPU).
The cluster CL0 rewrites an access region 21 of the SSU 2 according to the following procedure. First, the cluster CL0 refers to a value of a table 22 which indicates whether the access region 21 is presently rewritable. The table 22 is written with values indicating whether each of the access regions within the SSU 2 are rewritable. If the access region 21 that is to be rewritten by the cluster CL0 is in a rewritable state, the cluster CL0 rewrites the value in the table 22 and acquires a right to store. On the other hand, if the access region 21 that is to be rewritten by the cluster CL0 is in a non-rewritable state, the value in the table is reread a number of times and the cluster CL0 waits until this access region 21 assumes the rewritable state. From the time when the table 22 is read until the time when the table 22 is rewritten, access to the same table 22 by the other cluster CL1 is held as illustrated in FIG. 2. A table rewrite instruction for rewriting the table 22 is called a LOCK instruction, and the data length of the LOCK instruction is 8 bytes or less, for example.
When the cluster CL0 secures the right to store to the access region 21 by reading the table 22, the cluster CL0 rewrites the access region. After the rewriting of the access region 21 by the cluster CL0 ends, the cluster CL0 releases the right to store by rewriting the table 22.
For the sake of convenience, a case will be considered where the other cluster CL1 desires to use the data in the access region 21 after the access region 21 has been rewritten by the cluster CL0, in a state where the cluster CL0 is rewriting the access region 21. In this case, the cluster CL0 rewrites the access region 21 according to the procedure described above. For this reason, in order for the cluster CL1 to confirm the end of updating the access region 21 by the cluster CL0, it is either preferable for the cluster CL1 to (A) read the table 22 and find out that the cluster CL0 is not executing the rewriting and confirm the entry of the updated data by reading the data in the access region 21 or, (B) read only the data in the access region 21 and store to the access region 21 data which enables judgement as to whether the updating by the cluster CL0 has ended completely (that is, it is not during the storing), so that the cluster CL1 can confirm the entry of the updated data by reading only the data in the access region 21.
Of the methods (A) and (B) in which the cluster CL1 confirms whether the updating of the access region 21 by the cluster CL0 has ended, a high-speed processing can be expected by the latter method (B), because the method (B) only requires the instruction to be executed once. However, even in the case of the method (B), if the access region 21 is being updated by the cluster CL0, the cluster CL1 must repeat the access a number of times and wait until the updating of the access region 21 by the cluster CL0 is completed. Moreover, due to improvements in the memory access speed in recent years, the transfer process between the cluster CL0 or CL1 and the SSU 2 affects the improvement of the memory access speed more than the internal process of the SSU 2. Consequently, it contributes more to the improvement of the memory access speed by reducing the number of instructions issued to the SSU 2 from each of the clusters CL0 and CL1.
A method has been proposed in which a specific memory access means secures a predetermined address range, and other memory access means are excluded within the predetermined address range, in order to enable free reading and storing by the specific memory access means. However, it is preferable to issue an instruction again in order to release the predetermined address range which has been secured.
The applicant is aware of Japanese Laid-Open Patent Publications No. 3-160552, No. 61-259362, No. 10-27131 and No. 5-2569.
According to the conventional access control, it is difficult to speed up the procedure in which one cluster confirms the end of updating an access region by another cluster. For this reason, there was a problem in that it is difficult to increase the operation speed of a computer system in which a plurality of clusters share a storage unit.